home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / usr / lib / mozilla-firefox / include / xpconnect / nsIXPCScriptable.h < prev    next >
C/C++ Source or Header  |  2006-05-08  |  27KB  |  420 lines

  1. /*
  2.  * DO NOT EDIT.  THIS FILE IS GENERATED FROM nsIXPCScriptable.idl
  3.  */
  4.  
  5. #ifndef __gen_nsIXPCScriptable_h__
  6. #define __gen_nsIXPCScriptable_h__
  7.  
  8.  
  9. #ifndef __gen_nsISupports_h__
  10. #include "nsISupports.h"
  11. #endif
  12.  
  13. #ifndef __gen_nsIXPConnect_h__
  14. #include "nsIXPConnect.h"
  15. #endif
  16.  
  17. /* For IDL files that don't want to include root IDL files. */
  18. #ifndef NS_NO_VTABLE
  19. #define NS_NO_VTABLE
  20. #endif
  21. #define NS_SUCCESS_I_DID_SOMETHING \
  22.    (NS_ERROR_GENERATE_SUCCESS(NS_ERROR_MODULE_XPCONNECT,1))
  23.  
  24. /* starting interface:    nsIXPCScriptable */
  25. #define NS_IXPCSCRIPTABLE_IID_STR "9cc0c2e0-f769-4f14-8cd6-2d2d40466f6c"
  26.  
  27. #define NS_IXPCSCRIPTABLE_IID \
  28.   {0x9cc0c2e0, 0xf769, 0x4f14, \
  29.     { 0x8c, 0xd6, 0x2d, 0x2d, 0x40, 0x46, 0x6f, 0x6c }}
  30.  
  31. /***************************************************************************/
  32. /***************************************************************************/
  33. class NS_NO_VTABLE nsIXPCScriptable : public nsISupports {
  34.  public: 
  35.  
  36.   NS_DEFINE_STATIC_IID_ACCESSOR(NS_IXPCSCRIPTABLE_IID)
  37.  
  38.   /**
  39.  * Note: This is not really an XPCOM interface.  For example, callers must
  40.  * guarantee that they set the *_retval of the various methods that return a
  41.  * boolean to PR_TRUE before making the call.  Implementations may skip writing
  42.  * to *_retval unless they want to return PR_FALSE.
  43.  */
  44.   enum { WANT_PRECREATE = 1U };
  45.  
  46.   enum { WANT_CREATE = 2U };
  47.  
  48.   enum { WANT_POSTCREATE = 4U };
  49.  
  50.   enum { WANT_ADDPROPERTY = 8U };
  51.  
  52.   enum { WANT_DELPROPERTY = 16U };
  53.  
  54.   enum { WANT_GETPROPERTY = 32U };
  55.  
  56.   enum { WANT_SETPROPERTY = 64U };
  57.  
  58.   enum { WANT_ENUMERATE = 128U };
  59.  
  60.   enum { WANT_NEWENUMERATE = 256U };
  61.  
  62.   enum { WANT_NEWRESOLVE = 512U };
  63.  
  64.   enum { WANT_CONVERT = 1024U };
  65.  
  66.   enum { WANT_FINALIZE = 2048U };
  67.  
  68.   enum { WANT_CHECKACCESS = 4096U };
  69.  
  70.   enum { WANT_CALL = 8192U };
  71.  
  72.   enum { WANT_CONSTRUCT = 16384U };
  73.  
  74.   enum { WANT_HASINSTANCE = 32768U };
  75.  
  76.   enum { WANT_MARK = 65536U };
  77.  
  78.   enum { USE_JSSTUB_FOR_ADDPROPERTY = 131072U };
  79.  
  80.   enum { USE_JSSTUB_FOR_DELPROPERTY = 262144U };
  81.  
  82.   enum { USE_JSSTUB_FOR_SETPROPERTY = 524288U };
  83.  
  84.   enum { DONT_ENUM_STATIC_PROPS = 1048576U };
  85.  
  86.   enum { DONT_ENUM_QUERY_INTERFACE = 2097152U };
  87.  
  88.   enum { DONT_ASK_INSTANCE_FOR_SCRIPTABLE = 4194304U };
  89.  
  90.   enum { CLASSINFO_INTERFACES_ONLY = 8388608U };
  91.  
  92.   enum { ALLOW_PROP_MODS_DURING_RESOLVE = 16777216U };
  93.  
  94.   enum { ALLOW_PROP_MODS_TO_PROTOTYPE = 33554432U };
  95.  
  96.   enum { DONT_SHARE_PROTOTYPE = 67108864U };
  97.  
  98.   enum { DONT_REFLECT_INTERFACE_NAMES = 134217728U };
  99.  
  100.   enum { WANT_EQUALITY = 268435456U };
  101.  
  102.   enum { WANT_OUTER_OBJECT = 536870912U };
  103.  
  104.   enum { WANT_INNER_OBJECT = 1073741824U };
  105.  
  106.   enum { RESERVED = 2147483648U };
  107.  
  108.   /* readonly attribute string className; */
  109.   NS_IMETHOD GetClassName(char * *aClassName) = 0;
  110.  
  111.   /* readonly attribute PRUint32 scriptableFlags; */
  112.   NS_IMETHOD GetScriptableFlags(PRUint32 *aScriptableFlags) = 0;
  113.  
  114.   /* void preCreate (in nsISupports nativeObj, in JSContextPtr cx, in JSObjectPtr globalObj, out JSObjectPtr parentObj); */
  115.   NS_IMETHOD PreCreate(nsISupports *nativeObj, JSContext * cx, JSObject * globalObj, JSObject * *parentObj) = 0;
  116.  
  117.   /* void create (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj); */
  118.   NS_IMETHOD Create(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj) = 0;
  119.  
  120.   /* void postCreate (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj); */
  121.   NS_IMETHOD PostCreate(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj) = 0;
  122.  
  123.   /* PRBool addProperty (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj, in JSVal id, in JSValPtr vp); */
  124.   NS_IMETHOD AddProperty(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, jsval id, jsval * vp, PRBool *_retval) = 0;
  125.  
  126.   /* PRBool delProperty (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj, in JSVal id, in JSValPtr vp); */
  127.   NS_IMETHOD DelProperty(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, jsval id, jsval * vp, PRBool *_retval) = 0;
  128.  
  129.   /* PRBool getProperty (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj, in JSVal id, in JSValPtr vp); */
  130.   NS_IMETHOD GetProperty(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, jsval id, jsval * vp, PRBool *_retval) = 0;
  131.  
  132.   /* PRBool setProperty (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj, in JSVal id, in JSValPtr vp); */
  133.   NS_IMETHOD SetProperty(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, jsval id, jsval * vp, PRBool *_retval) = 0;
  134.  
  135.   /* PRBool enumerate (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj); */
  136.   NS_IMETHOD Enumerate(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, PRBool *_retval) = 0;
  137.  
  138.   /* PRBool newEnumerate (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj, in PRUint32 enum_op, in JSValPtr statep, out JSID idp); */
  139.   NS_IMETHOD NewEnumerate(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, PRUint32 enum_op, jsval * statep, jsid *idp, PRBool *_retval) = 0;
  140.  
  141.   /* PRBool newResolve (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj, in JSVal id, in PRUint32 flags, out JSObjectPtr objp); */
  142.   NS_IMETHOD NewResolve(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, jsval id, PRUint32 flags, JSObject * *objp, PRBool *_retval) = 0;
  143.  
  144.   /* PRBool convert (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj, in PRUint32 type, in JSValPtr vp); */
  145.   NS_IMETHOD Convert(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, PRUint32 type, jsval * vp, PRBool *_retval) = 0;
  146.  
  147.   /* void finalize (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj); */
  148.   NS_IMETHOD Finalize(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj) = 0;
  149.  
  150.   /* PRBool checkAccess (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj, in JSVal id, in PRUint32 mode, in JSValPtr vp); */
  151.   NS_IMETHOD CheckAccess(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, jsval id, PRUint32 mode, jsval * vp, PRBool *_retval) = 0;
  152.  
  153.   /* PRBool call (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj, in PRUint32 argc, in JSValPtr argv, in JSValPtr vp); */
  154.   NS_IMETHOD Call(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, PRUint32 argc, jsval * argv, jsval * vp, PRBool *_retval) = 0;
  155.  
  156.   /* PRBool construct (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj, in PRUint32 argc, in JSValPtr argv, in JSValPtr vp); */
  157.   NS_IMETHOD Construct(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, PRUint32 argc, jsval * argv, jsval * vp, PRBool *_retval) = 0;
  158.  
  159.   /* PRBool hasInstance (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj, in JSVal val, out PRBool bp); */
  160.   NS_IMETHOD HasInstance(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, jsval val, PRBool *bp, PRBool *_retval) = 0;
  161.  
  162.   /* PRUint32 mark (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj, in voidPtr arg); */
  163.   NS_IMETHOD Mark(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, void * arg, PRUint32 *_retval) = 0;
  164.  
  165.   /* PRBool equality (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj, in JSVal val); */
  166.   NS_IMETHOD Equality(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, jsval val, PRBool *_retval) = 0;
  167.  
  168.   /* JSObjectPtr outerObject (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj); */
  169.   NS_IMETHOD OuterObject(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, JSObject * *_retval) = 0;
  170.  
  171.   /* JSObjectPtr innerObject (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj); */
  172.   NS_IMETHOD InnerObject(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, JSObject * *_retval) = 0;
  173.  
  174. };
  175.  
  176. /* Use this macro when declaring classes that implement this interface. */
  177. #define NS_DECL_NSIXPCSCRIPTABLE \
  178.   NS_IMETHOD GetClassName(char * *aClassName); \
  179.   NS_IMETHOD GetScriptableFlags(PRUint32 *aScriptableFlags); \
  180.   NS_IMETHOD PreCreate(nsISupports *nativeObj, JSContext * cx, JSObject * globalObj, JSObject * *parentObj); \
  181.   NS_IMETHOD Create(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj); \
  182.   NS_IMETHOD PostCreate(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj); \
  183.   NS_IMETHOD AddProperty(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, jsval id, jsval * vp, PRBool *_retval); \
  184.   NS_IMETHOD DelProperty(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, jsval id, jsval * vp, PRBool *_retval); \
  185.   NS_IMETHOD GetProperty(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, jsval id, jsval * vp, PRBool *_retval); \
  186.   NS_IMETHOD SetProperty(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, jsval id, jsval * vp, PRBool *_retval); \
  187.   NS_IMETHOD Enumerate(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, PRBool *_retval); \
  188.   NS_IMETHOD NewEnumerate(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, PRUint32 enum_op, jsval * statep, jsid *idp, PRBool *_retval); \
  189.   NS_IMETHOD NewResolve(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, jsval id, PRUint32 flags, JSObject * *objp, PRBool *_retval); \
  190.   NS_IMETHOD Convert(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, PRUint32 type, jsval * vp, PRBool *_retval); \
  191.   NS_IMETHOD Finalize(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj); \
  192.   NS_IMETHOD CheckAccess(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, jsval id, PRUint32 mode, jsval * vp, PRBool *_retval); \
  193.   NS_IMETHOD Call(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, PRUint32 argc, jsval * argv, jsval * vp, PRBool *_retval); \
  194.   NS_IMETHOD Construct(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, PRUint32 argc, jsval * argv, jsval * vp, PRBool *_retval); \
  195.   NS_IMETHOD HasInstance(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, jsval val, PRBool *bp, PRBool *_retval); \
  196.   NS_IMETHOD Mark(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, void * arg, PRUint32 *_retval); \
  197.   NS_IMETHOD Equality(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, jsval val, PRBool *_retval); \
  198.   NS_IMETHOD OuterObject(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, JSObject * *_retval); \
  199.   NS_IMETHOD InnerObject(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, JSObject * *_retval); 
  200.  
  201. /* Use this macro to declare functions that forward the behavior of this interface to another object. */
  202. #define NS_FORWARD_NSIXPCSCRIPTABLE(_to) \
  203.   NS_IMETHOD GetClassName(char * *aClassName) { return _to GetClassName(aClassName); } \
  204.   NS_IMETHOD GetScriptableFlags(PRUint32 *aScriptableFlags) { return _to GetScriptableFlags(aScriptableFlags); } \
  205.   NS_IMETHOD PreCreate(nsISupports *nativeObj, JSContext * cx, JSObject * globalObj, JSObject * *parentObj) { return _to PreCreate(nativeObj, cx, globalObj, parentObj); } \
  206.   NS_IMETHOD Create(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj) { return _to Create(wrapper, cx, obj); } \
  207.   NS_IMETHOD PostCreate(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj) { return _to PostCreate(wrapper, cx, obj); } \
  208.   NS_IMETHOD AddProperty(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, jsval id, jsval * vp, PRBool *_retval) { return _to AddProperty(wrapper, cx, obj, id, vp, _retval); } \
  209.   NS_IMETHOD DelProperty(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, jsval id, jsval * vp, PRBool *_retval) { return _to DelProperty(wrapper, cx, obj, id, vp, _retval); } \
  210.   NS_IMETHOD GetProperty(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, jsval id, jsval * vp, PRBool *_retval) { return _to GetProperty(wrapper, cx, obj, id, vp, _retval); } \
  211.   NS_IMETHOD SetProperty(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, jsval id, jsval * vp, PRBool *_retval) { return _to SetProperty(wrapper, cx, obj, id, vp, _retval); } \
  212.   NS_IMETHOD Enumerate(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, PRBool *_retval) { return _to Enumerate(wrapper, cx, obj, _retval); } \
  213.   NS_IMETHOD NewEnumerate(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, PRUint32 enum_op, jsval * statep, jsid *idp, PRBool *_retval) { return _to NewEnumerate(wrapper, cx, obj, enum_op, statep, idp, _retval); } \
  214.   NS_IMETHOD NewResolve(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, jsval id, PRUint32 flags, JSObject * *objp, PRBool *_retval) { return _to NewResolve(wrapper, cx, obj, id, flags, objp, _retval); } \
  215.   NS_IMETHOD Convert(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, PRUint32 type, jsval * vp, PRBool *_retval) { return _to Convert(wrapper, cx, obj, type, vp, _retval); } \
  216.   NS_IMETHOD Finalize(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj) { return _to Finalize(wrapper, cx, obj); } \
  217.   NS_IMETHOD CheckAccess(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, jsval id, PRUint32 mode, jsval * vp, PRBool *_retval) { return _to CheckAccess(wrapper, cx, obj, id, mode, vp, _retval); } \
  218.   NS_IMETHOD Call(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, PRUint32 argc, jsval * argv, jsval * vp, PRBool *_retval) { return _to Call(wrapper, cx, obj, argc, argv, vp, _retval); } \
  219.   NS_IMETHOD Construct(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, PRUint32 argc, jsval * argv, jsval * vp, PRBool *_retval) { return _to Construct(wrapper, cx, obj, argc, argv, vp, _retval); } \
  220.   NS_IMETHOD HasInstance(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, jsval val, PRBool *bp, PRBool *_retval) { return _to HasInstance(wrapper, cx, obj, val, bp, _retval); } \
  221.   NS_IMETHOD Mark(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, void * arg, PRUint32 *_retval) { return _to Mark(wrapper, cx, obj, arg, _retval); } \
  222.   NS_IMETHOD Equality(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, jsval val, PRBool *_retval) { return _to Equality(wrapper, cx, obj, val, _retval); } \
  223.   NS_IMETHOD OuterObject(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, JSObject * *_retval) { return _to OuterObject(wrapper, cx, obj, _retval); } \
  224.   NS_IMETHOD InnerObject(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, JSObject * *_retval) { return _to InnerObject(wrapper, cx, obj, _retval); } 
  225.  
  226. /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
  227. #define NS_FORWARD_SAFE_NSIXPCSCRIPTABLE(_to) \
  228.   NS_IMETHOD GetClassName(char * *aClassName) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetClassName(aClassName); } \
  229.   NS_IMETHOD GetScriptableFlags(PRUint32 *aScriptableFlags) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetScriptableFlags(aScriptableFlags); } \
  230.   NS_IMETHOD PreCreate(nsISupports *nativeObj, JSContext * cx, JSObject * globalObj, JSObject * *parentObj) { return !_to ? NS_ERROR_NULL_POINTER : _to->PreCreate(nativeObj, cx, globalObj, parentObj); } \
  231.   NS_IMETHOD Create(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj) { return !_to ? NS_ERROR_NULL_POINTER : _to->Create(wrapper, cx, obj); } \
  232.   NS_IMETHOD PostCreate(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj) { return !_to ? NS_ERROR_NULL_POINTER : _to->PostCreate(wrapper, cx, obj); } \
  233.   NS_IMETHOD AddProperty(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, jsval id, jsval * vp, PRBool *_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->AddProperty(wrapper, cx, obj, id, vp, _retval); } \
  234.   NS_IMETHOD DelProperty(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, jsval id, jsval * vp, PRBool *_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->DelProperty(wrapper, cx, obj, id, vp, _retval); } \
  235.   NS_IMETHOD GetProperty(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, jsval id, jsval * vp, PRBool *_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetProperty(wrapper, cx, obj, id, vp, _retval); } \
  236.   NS_IMETHOD SetProperty(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, jsval id, jsval * vp, PRBool *_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetProperty(wrapper, cx, obj, id, vp, _retval); } \
  237.   NS_IMETHOD Enumerate(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, PRBool *_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->Enumerate(wrapper, cx, obj, _retval); } \
  238.   NS_IMETHOD NewEnumerate(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, PRUint32 enum_op, jsval * statep, jsid *idp, PRBool *_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->NewEnumerate(wrapper, cx, obj, enum_op, statep, idp, _retval); } \
  239.   NS_IMETHOD NewResolve(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, jsval id, PRUint32 flags, JSObject * *objp, PRBool *_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->NewResolve(wrapper, cx, obj, id, flags, objp, _retval); } \
  240.   NS_IMETHOD Convert(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, PRUint32 type, jsval * vp, PRBool *_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->Convert(wrapper, cx, obj, type, vp, _retval); } \
  241.   NS_IMETHOD Finalize(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj) { return !_to ? NS_ERROR_NULL_POINTER : _to->Finalize(wrapper, cx, obj); } \
  242.   NS_IMETHOD CheckAccess(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, jsval id, PRUint32 mode, jsval * vp, PRBool *_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->CheckAccess(wrapper, cx, obj, id, mode, vp, _retval); } \
  243.   NS_IMETHOD Call(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, PRUint32 argc, jsval * argv, jsval * vp, PRBool *_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->Call(wrapper, cx, obj, argc, argv, vp, _retval); } \
  244.   NS_IMETHOD Construct(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, PRUint32 argc, jsval * argv, jsval * vp, PRBool *_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->Construct(wrapper, cx, obj, argc, argv, vp, _retval); } \
  245.   NS_IMETHOD HasInstance(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, jsval val, PRBool *bp, PRBool *_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->HasInstance(wrapper, cx, obj, val, bp, _retval); } \
  246.   NS_IMETHOD Mark(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, void * arg, PRUint32 *_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->Mark(wrapper, cx, obj, arg, _retval); } \
  247.   NS_IMETHOD Equality(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, jsval val, PRBool *_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->Equality(wrapper, cx, obj, val, _retval); } \
  248.   NS_IMETHOD OuterObject(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, JSObject * *_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->OuterObject(wrapper, cx, obj, _retval); } \
  249.   NS_IMETHOD InnerObject(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, JSObject * *_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->InnerObject(wrapper, cx, obj, _retval); } 
  250.  
  251. #if 0
  252. /* Use the code below as a template for the implementation class for this interface. */
  253.  
  254. /* Header file */
  255. class nsXPCScriptable : public nsIXPCScriptable
  256. {
  257. public:
  258.   NS_DECL_ISUPPORTS
  259.   NS_DECL_NSIXPCSCRIPTABLE
  260.  
  261.   nsXPCScriptable();
  262.  
  263. private:
  264.   ~nsXPCScriptable();
  265.  
  266. protected:
  267.   /* additional members */
  268. };
  269.  
  270. /* Implementation file */
  271. NS_IMPL_ISUPPORTS1(nsXPCScriptable, nsIXPCScriptable)
  272.  
  273. nsXPCScriptable::nsXPCScriptable()
  274. {
  275.   /* member initializers and constructor code */
  276. }
  277.  
  278. nsXPCScriptable::~nsXPCScriptable()
  279. {
  280.   /* destructor code */
  281. }
  282.  
  283. /* readonly attribute string className; */
  284. NS_IMETHODIMP nsXPCScriptable::GetClassName(char * *aClassName)
  285. {
  286.     return NS_ERROR_NOT_IMPLEMENTED;
  287. }
  288.  
  289. /* readonly attribute PRUint32 scriptableFlags; */
  290. NS_IMETHODIMP nsXPCScriptable::GetScriptableFlags(PRUint32 *aScriptableFlags)
  291. {
  292.     return NS_ERROR_NOT_IMPLEMENTED;
  293. }
  294.  
  295. /* void preCreate (in nsISupports nativeObj, in JSContextPtr cx, in JSObjectPtr globalObj, out JSObjectPtr parentObj); */
  296. NS_IMETHODIMP nsXPCScriptable::PreCreate(nsISupports *nativeObj, JSContext * cx, JSObject * globalObj, JSObject * *parentObj)
  297. {
  298.     return NS_ERROR_NOT_IMPLEMENTED;
  299. }
  300.  
  301. /* void create (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj); */
  302. NS_IMETHODIMP nsXPCScriptable::Create(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj)
  303. {
  304.     return NS_ERROR_NOT_IMPLEMENTED;
  305. }
  306.  
  307. /* void postCreate (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj); */
  308. NS_IMETHODIMP nsXPCScriptable::PostCreate(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj)
  309. {
  310.     return NS_ERROR_NOT_IMPLEMENTED;
  311. }
  312.  
  313. /* PRBool addProperty (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj, in JSVal id, in JSValPtr vp); */
  314. NS_IMETHODIMP nsXPCScriptable::AddProperty(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, jsval id, jsval * vp, PRBool *_retval)
  315. {
  316.     return NS_ERROR_NOT_IMPLEMENTED;
  317. }
  318.  
  319. /* PRBool delProperty (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj, in JSVal id, in JSValPtr vp); */
  320. NS_IMETHODIMP nsXPCScriptable::DelProperty(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, jsval id, jsval * vp, PRBool *_retval)
  321. {
  322.     return NS_ERROR_NOT_IMPLEMENTED;
  323. }
  324.  
  325. /* PRBool getProperty (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj, in JSVal id, in JSValPtr vp); */
  326. NS_IMETHODIMP nsXPCScriptable::GetProperty(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, jsval id, jsval * vp, PRBool *_retval)
  327. {
  328.     return NS_ERROR_NOT_IMPLEMENTED;
  329. }
  330.  
  331. /* PRBool setProperty (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj, in JSVal id, in JSValPtr vp); */
  332. NS_IMETHODIMP nsXPCScriptable::SetProperty(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, jsval id, jsval * vp, PRBool *_retval)
  333. {
  334.     return NS_ERROR_NOT_IMPLEMENTED;
  335. }
  336.  
  337. /* PRBool enumerate (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj); */
  338. NS_IMETHODIMP nsXPCScriptable::Enumerate(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, PRBool *_retval)
  339. {
  340.     return NS_ERROR_NOT_IMPLEMENTED;
  341. }
  342.  
  343. /* PRBool newEnumerate (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj, in PRUint32 enum_op, in JSValPtr statep, out JSID idp); */
  344. NS_IMETHODIMP nsXPCScriptable::NewEnumerate(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, PRUint32 enum_op, jsval * statep, jsid *idp, PRBool *_retval)
  345. {
  346.     return NS_ERROR_NOT_IMPLEMENTED;
  347. }
  348.  
  349. /* PRBool newResolve (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj, in JSVal id, in PRUint32 flags, out JSObjectPtr objp); */
  350. NS_IMETHODIMP nsXPCScriptable::NewResolve(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, jsval id, PRUint32 flags, JSObject * *objp, PRBool *_retval)
  351. {
  352.     return NS_ERROR_NOT_IMPLEMENTED;
  353. }
  354.  
  355. /* PRBool convert (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj, in PRUint32 type, in JSValPtr vp); */
  356. NS_IMETHODIMP nsXPCScriptable::Convert(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, PRUint32 type, jsval * vp, PRBool *_retval)
  357. {
  358.     return NS_ERROR_NOT_IMPLEMENTED;
  359. }
  360.  
  361. /* void finalize (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj); */
  362. NS_IMETHODIMP nsXPCScriptable::Finalize(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj)
  363. {
  364.     return NS_ERROR_NOT_IMPLEMENTED;
  365. }
  366.  
  367. /* PRBool checkAccess (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj, in JSVal id, in PRUint32 mode, in JSValPtr vp); */
  368. NS_IMETHODIMP nsXPCScriptable::CheckAccess(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, jsval id, PRUint32 mode, jsval * vp, PRBool *_retval)
  369. {
  370.     return NS_ERROR_NOT_IMPLEMENTED;
  371. }
  372.  
  373. /* PRBool call (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj, in PRUint32 argc, in JSValPtr argv, in JSValPtr vp); */
  374. NS_IMETHODIMP nsXPCScriptable::Call(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, PRUint32 argc, jsval * argv, jsval * vp, PRBool *_retval)
  375. {
  376.     return NS_ERROR_NOT_IMPLEMENTED;
  377. }
  378.  
  379. /* PRBool construct (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj, in PRUint32 argc, in JSValPtr argv, in JSValPtr vp); */
  380. NS_IMETHODIMP nsXPCScriptable::Construct(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, PRUint32 argc, jsval * argv, jsval * vp, PRBool *_retval)
  381. {
  382.     return NS_ERROR_NOT_IMPLEMENTED;
  383. }
  384.  
  385. /* PRBool hasInstance (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj, in JSVal val, out PRBool bp); */
  386. NS_IMETHODIMP nsXPCScriptable::HasInstance(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, jsval val, PRBool *bp, PRBool *_retval)
  387. {
  388.     return NS_ERROR_NOT_IMPLEMENTED;
  389. }
  390.  
  391. /* PRUint32 mark (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj, in voidPtr arg); */
  392. NS_IMETHODIMP nsXPCScriptable::Mark(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, void * arg, PRUint32 *_retval)
  393. {
  394.     return NS_ERROR_NOT_IMPLEMENTED;
  395. }
  396.  
  397. /* PRBool equality (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj, in JSVal val); */
  398. NS_IMETHODIMP nsXPCScriptable::Equality(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, jsval val, PRBool *_retval)
  399. {
  400.     return NS_ERROR_NOT_IMPLEMENTED;
  401. }
  402.  
  403. /* JSObjectPtr outerObject (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj); */
  404. NS_IMETHODIMP nsXPCScriptable::OuterObject(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, JSObject * *_retval)
  405. {
  406.     return NS_ERROR_NOT_IMPLEMENTED;
  407. }
  408.  
  409. /* JSObjectPtr innerObject (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj); */
  410. NS_IMETHODIMP nsXPCScriptable::InnerObject(nsIXPConnectWrappedNative *wrapper, JSContext * cx, JSObject * obj, JSObject * *_retval)
  411. {
  412.     return NS_ERROR_NOT_IMPLEMENTED;
  413. }
  414.  
  415. /* End of implementation class template. */
  416. #endif
  417.  
  418.  
  419. #endif /* __gen_nsIXPCScriptable_h__ */
  420.